﻿
using Prism.Mvvm;
using System;
using System.ComponentModel;
using System.Linq;

namespace Wpf.Models
{
    public class InterfaceToolEntity :  BindableBase 
    {
       
        private string classname;

        private string injson;
        private string interFaceCode;
        private string interfaceDescription;

        private string interFaceName;

        private string javaScriptCode;

        private string outjson;
        public int ISDELETE { get; set; }
        public string ID { get; set; }

        public string INTERFACECODE
        {
            get => interFaceCode;
            set
            {
                interFaceCode = value;
                RaisePropertyChanged(nameof(INTERFACECODE));
            }
        }

        public string INTERFACENAME
        {
            get => interFaceName;
            set
            {
                interFaceName = value;
                RaisePropertyChanged(nameof(INTERFACENAME));
            }
        }

        public decimal? INVALIDFLAG { get; set; }

        public string INTERFACEDESCRIPTION
        {
            get => interfaceDescription;
            set
            {
                interfaceDescription = value;
                RaisePropertyChanged(nameof(INTERFACEDESCRIPTION));
            }
        }

        public DateTime? CREATEDATE { get; set; }
        public string CREATEUSER { get; set; }
        public DateTime? UPDATEDATE { get; set; }
        public string UPDATEUSER { get; set; }

        public string INJSON
        {
            get => injson;
            set
            {
                injson = value;
                RaisePropertyChanged(nameof(INJSON));
            }
        }

        public string JAVASCRIPTCODE
        {
            get => javaScriptCode;
            set
            {
                javaScriptCode = value;
                RaisePropertyChanged(nameof(JAVASCRIPTCODE));
            }
        }

        public string OUTJSON
        {
            get => outjson;
            set
            {
                outjson = value;
                RaisePropertyChanged(nameof(OUTJSON));
            }
        }

        public string CLASSNAME
        {
            get => classname;
            set
            {
                classname = value;
                RaisePropertyChanged(nameof(CLASSNAME));
            }
        }

        private string functionname;

        public string FUNCTIONNAME
        {
            get => functionname;
            set
            {
                functionname = value;
                RaisePropertyChanged(nameof(FUNCTIONNAME));
            }
        }

        private int scriptType;
        /// <summary>
        /// 0:javascript 1:python
        /// </summary>
        public int SCRIPTTYPE
        {
            get => scriptType;
            set
            {
                scriptType = value;
                RaisePropertyChanged(nameof(SCRIPTTYPE));
            }
        }

       
    }
}
